/**
 * 获取格式化的日期时间
 */
class DateUtil {
    /**
     * 格式化日期
     * @param num  传入一个日期值，也可以不传
     * @returns  如果传入一个日期值返回格式化后的日期，不传参数则返回当前日期
     */
    formatDate(num: number | Date = new Date()): string {
        let date = new Date(num)
        let year = date.getFullYear()
        let month = date.getMonth() + 1
        let day = date.getDate()
        let m = month < 10 ? '0' + month : month
        let d = day < 10 ? '0' + day : day
        return `${year}-${m}-${d}`
    }

    /**
     * 格式化时间
     * @param num  传入一个时间值，也可以不传
     * @returns  如果传入一个时间值返回格式化后的时间，不传参数则返回当前时间
     */
    formatTime(num: number | Date = new Date()): string {
        let date = new Date(num)
        let hours = date.getHours()
        let minutes = date.getMinutes()
        let seconds = date.getSeconds()
        let h = hours < 10 ? '0' + hours : hours
        let m = minutes < 10 ? '0' + minutes : minutes
        let s = seconds < 10 ? '0' + seconds : seconds
        return `${h}:${m}:${s}`
    }
}

export default new DateUtil()